//
//  ZLPullMenuBaseConfig.h
//  ZLPullMenu
//
//  Created by 科大 on 2024/5/29.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

/// 父类
@interface ZLPullMenuBaseConfig : NSObject
/// 字体
@property (nonatomic, strong) UIFont *font;
/// 字色
@property (nonatomic, strong) UIColor *textColor;
/// 默认配置
+ (instancetype)defaultConfig;
@end

/// 顶部菜单
@interface ZLPullMenuConfig : ZLPullMenuBaseConfig
/// 选中字体
@property (nonatomic, strong) UIFont *selectedFont;
/// 字色
@property (nonatomic, strong) UIColor *textSelectedColor;
/// 箭头颜色（下）
@property (nonatomic, strong) UIColor *arrowColor;
/// 选中箭头色（上）
@property (nonatomic, strong) UIColor *arrowSelectedColor;
+ (instancetype)configWithFont:(UIFont *)font
                  selectedFont:(UIFont *)selectedFont
                     textColor:(UIColor *)textColor
             textSelectedColor:(UIColor *)textSelectedColor
                    arrowColor:(UIColor *)arrowColor
            arrowSelectedColor:(UIColor *)arrowSelectedColor;
@end

/// 组标题
@interface ZLPullMenuGroupConfig : ZLPullMenuBaseConfig
+ (instancetype)configWithFont:(UIFont *)font
                     textColor:(UIColor *)textColor;
@end

/// 选项
@interface ZLPullMenuOptionpConfig : ZLPullMenuBaseConfig
/// 选中字体
@property (nonatomic, strong) UIFont *selectedFont;
/// 字色
@property (nonatomic, strong) UIColor *textSelectedColor;
/// 背景色
@property (nonatomic, strong) UIColor *backgroundColor;
/// 选中背景色
@property (nonatomic, strong) UIColor *backgroundSelectedColor;
/// 边框色
@property (nonatomic, strong) UIColor *borderColor;
/// 选中边框色
@property (nonatomic, strong) UIColor *borderSelectedColor;
+ (instancetype)configWithFont:(UIFont *)font
                  selectedFont:(UIFont *)selectedFont
                     textColor:(UIColor *)textColor
             textSelectedColor:(UIColor *)textSelectedColor
               backgroundColor:(UIColor *)backgroundColor
       backgroundSelectedColor:(UIColor *)backgroundSelectedColor
                   borderColor:(UIColor *)borderColor
           borderSelectedColor:(UIColor *)borderSelectedColor;
@end

NS_ASSUME_NONNULL_END
